package test0109;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class Test07 {
    public static void main(String[] args) {

        // (7)list集合按照要求存储到map中
        // Map：键值对存储结构

        T m1 = new T("张三",30);
        T m2 = new T("李四",40);
        T m3 = new T("王五",50);

        List<T> list = new ArrayList<>();

        list.add(m1);
        list.add(m2);
        list.add(m3);

        System.out.println(list);

        // map要求一的结构
        // key      vaule
        // 张三 ->   m1对象
        // 李四 ->   m2对象
        // 王五 ->   m3对象
        Map<Integer, T> map = new HashMap<Integer, T>();
        list.forEach(a -> {
            map.put(a.getAge(), a);
        });

        System.out.println(map);

        map.forEach((k,v)->{
            System.out.println(v);
        });


        // map要求二的结构
        // key      vaule
        // 30 ->   m1对象
        // 40 ->   m2对象
        // 50 ->   m3对象


    }
}

class T {
    String name;
    int age;
    public T(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "T{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
}